Skip to content

INCIDENT-010: validate IP address and endpoints taken as a part of CRD fields#224

Merged
noctarius merged 3 commits into
mainfrom
INCIDENT-010
Jul 13, 2026
Merged

INCIDENT-010: validate IP address and endpoints taken as a part of CRD fields#224
noctarius merged 3 commits into
mainfrom
INCIDENT-010

Conversation

@boddumanohar

@boddumanohar boddumanohar commented Jun 4, 2026

Copy link
Copy Markdown
Member

fixes: #189

created a function ValidateExternalURL that validations and blocks endpoints in blockedIPNets list

@boddumanohar boddumanohar force-pushed the INCIDENT-010 branch 2 times, most recently from a499364 to 37b2b93 Compare June 19, 2026 12:25
Comment thread internal/utils/helpers.go
Comment thread internal/utils/helpers.go
// (SSRF protection: RFC-1918, loopback, link-local, cloud IMDS, IPv6 equivalents).
var blockedIPNets = func() []*net.IPNet {
cidrs := []string{
"10.0.0.0/8",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still believe that the internal networks need to be removed from the list in this specific case since it's totally valid on self-hosted (and even hosted) clusters:

  • 10.0.0.0/8 (actually Kubernetes default)
  • 172.16.0.0/12
  • 192.168.0.0/16
  • fc00::/7

@noctarius noctarius self-assigned this Jul 13, 2026
- Run make manifests generate to sync pattern validations for localEndpoint
  and HashiCorp Vault baseURL into the CRD YAML
- Remove unused eventReasonClusterLookupError and eventReasonClusterAuthError
  constants flagged by golangci-lint
@noctarius noctarius merged commit b25d3db into main Jul 13, 2026
5 checks passed
@noctarius noctarius deleted the INCIDENT-010 branch July 13, 2026 11:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

INCIDENT-010: SSRF via Unvalidated Vault and S3 Endpoint URLs

2 participants